Physically unclonable functions (PUF) are identifiers on integrated circuits (“chips”) that result from process variation. Although these process variations may be undesirable for manufacturing, these process variations create a unique “fingerprint” for each chip. By being able to identify a chip, security protocols can be built using the chip's “fingerprint”.
However, the problem with PUFs is that the PUF can vary over time. For certain functions such as identification functions, it may be acceptable if less than 100% of the bits in the PUF match. However, for other functions such as decryption functions, it is important that none of the bits change over time.
Some methods have tried to address this issue using “helper data”. However, the “helper data” must be stored somewhere, which may add to the overhead. In addition, there is concern that the “helper data” might leak information about the decryption key.